package com.star.test.utils;

public class JAVA48 {
    public static void method(int start, int end) {
        int count = 0, temp = 0;
        if (start > end) {
            temp = start;
            start = end;
            end = temp;
        }
        for (int i = start; i <= end; i++) {
            if (i > 2 && isPrime(i)){
                count++;
            }
        }
        System.out.println(start + "到" + end + "之间有" + count + "个大于2的素数");
    }

    public static boolean isPrime(int n) {
        if (n < 2) return false;        // 小于2不是素数
        if (n == 2) return true;        // 2是素数
        if (n % 2 == 0) return false;   // 其他偶数不是素数

        // 只需检查奇数因子到 sqrt(n)
        for (int i = 3; i * i <= n; i += 2) {
            if (n % i == 0) {
                return false;
            }
        }
        return true;
    }
}
